home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 44 / PC Actual CD 44.iso / Linux / Cygwin / full.exe / Disk1 / data1.cab / Tools / H-i586-cygwin32 / i586-cygwin32 / include / machine / ieeefp.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-12-04  |  2.6 KB  |  141 lines

  1. #ifndef __IEEE_BIG_ENDIAN
  2. #ifndef __IEEE_LITTLE_ENDIAN
  3.  
  4. #if defined(__arm__) || defined(__thumb__)
  5. /* ARM always has big-endian words.  Within those words the byte ordering
  6.    appears to be big or little endian.  Newlib doesn't seem to care about
  7.    the byte ordering within words.  */
  8. #define __IEEE_BIG_ENDIAN
  9. #endif
  10.  
  11. #ifdef __hppa__
  12. #define __IEEE_BIG_ENDIAN
  13. #endif
  14.  
  15. #ifdef __sparc__
  16. #ifdef __LITTLE_ENDIAN_DATA__
  17. #define __IEEE_LITTLE_ENDIAN
  18. #else
  19. #define __IEEE_BIG_ENDIAN
  20. #endif
  21. #endif
  22.  
  23. #if defined(__m68k__) || defined(__mc68000__)
  24. #define __IEEE_BIG_ENDIAN
  25. #endif
  26.  
  27. #if defined (__H8300__) || defined (__H8300H__) || defined (__H8300S__)
  28. #define __IEEE_BIG_ENDIAN
  29. #define __SMALL_BITFIELDS
  30. #define _DOUBLE_IS_32BITS
  31. #endif
  32.  
  33. #ifdef __H8500__
  34. #define __IEEE_BIG_ENDIAN
  35. #define __SMALL_BITFIELDS
  36. #define _DOUBLE_IS_32BITS
  37. #endif
  38.  
  39. #ifdef __sh__
  40. #ifdef __LITTLE_ENDIAN__
  41. #define __IEEE_LITTLE_ENDIAN
  42. #else
  43. #define __IEEE_BIG_ENDIAN
  44. #endif
  45. #if defined(__SH3E__) || defined(__SH4_SINGLE_ONLY__)
  46. #define _DOUBLE_IS_32BITS
  47. #endif
  48. #endif
  49.  
  50. #ifdef _AM29K
  51. #define __IEEE_BIG_ENDIAN
  52. #endif
  53.  
  54. #ifdef __i386__
  55. #define __IEEE_LITTLE_ENDIAN
  56. #endif
  57.  
  58. #ifdef __i960__
  59. #define __IEEE_LITTLE_ENDIAN
  60. #endif
  61.  
  62. #ifdef __M32R__
  63. #define __IEEE_BIG_ENDIAN
  64. #endif
  65.  
  66.  
  67. #ifdef __MIPSEL__
  68. #define __IEEE_LITTLE_ENDIAN
  69. #endif
  70. #ifdef __MIPSEB__
  71. #define __IEEE_BIG_ENDIAN
  72. #endif
  73.  
  74. /* necv70 was __IEEE_LITTLE_ENDIAN. */
  75.  
  76. #ifdef __W65__
  77. #define __IEEE_LITTLE_ENDIAN
  78. #define __SMALL_BITFIELDS
  79. #define _DOUBLE_IS_32BITS
  80. #endif
  81.  
  82. #if defined(__Z8001__) || defined(__Z8002__)
  83. #define __IEEE_BIG_ENDIAN
  84. #endif
  85.  
  86. #ifdef __m88k__
  87. #define __IEEE_BIG_ENDIAN
  88. #endif
  89.  
  90. #ifdef __mn10300__
  91. #define __IEEE_LITTLE_ENDIAN
  92. #endif
  93.  
  94. #ifdef __mn10200__
  95. #define __IEEE_LITTLE_ENDIAN
  96. #define __SMALL_BITFIELDS
  97. #define _DOUBLE_IS_32BITS
  98. #endif
  99.  
  100. #ifdef __v800
  101. #define __IEEE_LITTLE_ENDIAN
  102. #endif
  103.  
  104. #ifdef __v850
  105. #define __IEEE_LITTLE_ENDIAN
  106. #endif
  107.  
  108. #ifdef __D10V__
  109. #define __IEEE_BIG_ENDIAN
  110. #define _DOUBLE_IS_32BITS
  111. #define __SMALL_BITFIELDS
  112. #endif
  113.  
  114. #ifdef __PPC__
  115. #if (defined(_BIG_ENDIAN) && _BIG_ENDIAN) || (defined(_AIX) && _AIX)
  116. #define __IEEE_BIG_ENDIAN
  117. #else
  118. #if (defined(_LITTLE_ENDIAN) && _LITTLE_ENDIAN) || (defined(__sun__) && __sun__) || (defined(_WIN32) && _WIN32)
  119. #define __IEEE_LITTLE_ENDIAN
  120. #endif
  121. #endif
  122. #endif
  123.  
  124. #ifdef __arc__
  125. #ifdef __big_endian__
  126. #define __IEEE_BIG_ENDIAN
  127. #else
  128. #define __IEEE_LITTLE_ENDIAN
  129. #endif
  130. #endif
  131.  
  132. #ifndef __IEEE_BIG_ENDIAN
  133. #ifndef __IEEE_LITTLE_ENDIAN
  134. #error Endianess not declared!!
  135. #endif /* not __IEEE_LITTLE_ENDIAN */
  136. #endif /* not __IEEE_BIG_ENDIAN */
  137.  
  138. #endif /* not __IEEE_LITTLE_ENDIAN */
  139. #endif /* not __IEEE_BIG_ENDIAN */
  140.  
  141.